//当前这个模块:API进行统一管理
import requests from './request'
import mockRequests from './mockAjax'
//三级联动的接口

//  /api/product/getBaseCategoryList    get请求   没有参数
// 对外暴露一个请求函数,在别的模块中就可以直接使用
export const reqCategoryList = () => {
    //发请求
    //需要给出返回值让别的模块使用  axios返回的是promise对象
    return requests({ url: '/product/getBaseCategoryList', method: 'get' })
};

//获取banner(Home首页轮播图接口)
export const reqGetBannerList = () => mockRequests.get('/banner')

//获取floor组件的轮播图数据
export const reqGetFloorList = () => mockRequests.get('/floor')

//获取搜索页面的数据  地址:/api/list 请求方式: post  需要带参数
//这里采用axios传配置对象的方式发送请求
//当前这个接口，给服务器传递参数params,至少是一个空对象  否则就会请求失败
export const reqGetSearchInfo = (params) => requests({ url: '/list', method: 'post', data: params })

//获取产品详情信息  地址:/api/item/{ skuId }    请求方式: get
export const reqGoodsInfo = (skuId) => requests({ url: `/item/${skuId}`, method: 'get' })

//将产品添加到购物车中,(获取更新某一个产品的个数)  地址:/api/cart/addToCart/{ skuId }/{ skuNum }    请求方式post  必选参数skuId  和 skuNum
export const reqAddOrUpdateShopCart = (skuId, skuNum) => requests({ url: `/cart/addToCart/${skuId}/${skuNum}`, method: 'post' })

//获取购物车列表数据接口  地址:/api/cart/cartList   请求方式 get
export const reqCartList = () => requests({ url: `/cart/cartList`, method: 'get' })

//删除购物产品的接口  地址:/api/cart/deleteCart/{skuId} 请求方式delete
export const reqDeleteCartById = (skuId) => requests({ url: `/cart/deleteCart/${skuId}`, method: 'delete' })

//修改商品的选中状态  地址:/api/cart/checkCart/{skuId}/{isChecked} 请求方式get
export const reqUpdateCheckedByid = (skuId, isChecked) => requests({ url: `/cart/checkCart/${skuId}/${isChecked}`, method: 'get' })

//获取验证码  地址:/api/user/passport/sendCode/{phone}  请求方式:get
export const reqGetCode = (phone) => requests({ url: `/user/passport/sendCode/${phone}`, method: 'get' })

//用户注册  地址:/api/user/passport/register  请求方式:post 
//带三个参数 手机号 用户密码 验证码
export const reqUserRegister = (data) => requests({ url: '/user/passport/register', data, method: "post" })


//登录  地址:/api/user/passport/login  请求方式:post  参数:phone   password
export const reqUserLogin = (data) => requests({ url: '/user/passport/login', data, method: 'post' })

//获取用户信息,(需要带着用户的token向服务器要用户信息)
//url:/api/user/passport/auth/getUserInfo  请求方式:get
export const reqUserInfo = () => requests({ url: '/user/passport/auth/getUserInfo', method: 'get' })


//退出登录  地址:/api/user/passport/logout  请求方式:'get'
export const reqLogout = () => requests({ url: `/user/passport/logout`, method: 'get' })

//获取用户地址信息  地址:/api/user/userAddress/auth/findUserAddressList  请求方式:'get'
export const reqAddressInfo = () => requests({
    url: `/user/userAddress/auth/findUserAddressList`, method: 'get'
})

//获取交易商品清单 地址:/api/order/auth/trade  请求方式:'get'
export const reqOrderInfo = () => requests({ url: `/order/auth/trade`, method: 'get' })


//提交订单的接口  地址:/api/order/auth/submitOrder?tradeNo={tradeNo}   请求方式:post
export const reqSubmitOrder = (tradeNo, data) => requests({ url: `/order/auth/submitOrder?tradeNo=${tradeNo}`, data, method: 'post' })

//获取支付信息   地址:/api/payment/weixin/createNative/{orderId}  请求方式:get
export const reqPayInfo = (orderId) => requests({ url: `/payment/weixin/createNative/${orderId}`, method: 'get' })

//获取支付订单状态  地址:/api/payment/weixin/createNative/{orderId}   请求方式:get
export const reqPayStatus = (orderId) => requests({ url: `/payment/weixin/createNative/${orderId}`, method: 'get' })


//获取个人中心的数据  地址:/api/order/auth/{page}/{limit}  请求方式:get
export const reqMyOrderList = (page, limit) => requests({ url: `/order/auth/${page}/${limit}`, method: 'get' })